Acala

Row

Pool
acala-subql
acala-dex-subql
Difference
id tvlUSD volumeUSD_24H volumeUSD_7D tvlUSD_DEX volumeUSD_24H_DEX volumeUSD_7D_DEX Absolute Percentage
lp://ACA/AUSD 4,909,145 2,843,388.1 4,060,757.8 6,979,784 2,853,619 4,372,273 2,070,638.99 199.8
lp://AUSD/fa%3A%2F%2F4 1,709,199 983,501.1 1,131,475.7 3,418,398 1,156,888 1,616,544 1,709,198.93 165
lp://AUSD/LDOT 1,287,604 639,296.6 942,861.9 2,574,077 1,278,253 1,966,182 1,286,473.45 124.2
lp://AUSD/fa%3A%2F%2F3 1,036,152 302,551.5 331,694.7 2,072,305 1,753,005 1,920,273 1,036,152.27 100
lp://DOT/LCDOT 14,434,707 4,575,295.0 5,948,823.7 14,360,949 4,594,482 6,164,835 73,758.81 7.1
lp://AUSD/LCDOT 3,913,117 4,104,113.1 5,227,122.4 3,903,177 4,132,702 5,359,142 9,939.85 1

Karura

Row

Pool
acala-subql
acala-dex-subql
Difference
id tvlUSD volumeUSD_24H volumeUSD_7D tvlUSD_DEX volumeUSD_24H_DEX volumeUSD_7D_DEX Absolute Percentage
lp://KBTC/KUSD -1,670,976.47 -615.21 -4,770.89 NA NA NA NA NA
lp://KINT/KUSD -1,303,595.17 -33.04 -2,820.29 NA NA NA NA NA
lp://PHA/KUSD -1,068,792.51 -68.69 -1,187.99 NA NA NA NA NA
lp://KUSD/KINT 1,292,599.46 -69.67 -2,873.11 9,459.34 88.35 5,029.99 1,283,140.12 NA
lp://KUSD/KBTC 1,604,799.22 0.00 -4,550.22 506,268.35 492.16 121,967.42 1,098,530.87 NA
lp://KUSD/PHA 1,065,075.01 -25.73 -1,243.26 14,935.34 391.64 10,505.39 1,050,139.67 NA
lp://TAI/taiKSM 0.00 0.00 0.00 9,257.04 893.72 14,729.77 9,257.04 NA
lp://KAR/KSM 1,063,460.09 5,114.06 192,426.86 1,066,965.86 5,129.60 200,139.30 3,505.77 NA
lp://KAR/KUSD 677,133.43 7,053.80 206,562.90 678,829.01 12,854.83 381,633.65 1,695.58 NA
lp://KUSD/KSM 565,400.88 5,891.43 515,765.37 566,806.89 5,896.76 523,524.75 1,406.01 NA
lp://KUSD/ARIS2 169,877.24 9,350.40 33,595.00 169,205.74 14,300.20 73,589.73 671.50 NA
lp://KAR/LKSM 630,401.72 1,183.20 53,903.85 630,934.58 1,183.40 127,257.48 532.86 NA
lp://KUSD/LKSM 502,732.10 1,083.97 181,751.80 502,269.66 1,082.40 234,152.22 462.44 NA
lp://KSM/LKSM 105,703.45 1,265.62 19,783.86 105,584.36 1,285.82 26,792.11 119.09 NA
lp://KAR/QTZ 7,164.98 382.40 10,347.71 7,208.89 527.73 28,823.05 43.90 NA
lp://KSM/ARIS 42.60 0.43 71.65 85.36 2.65 218.06 42.76 NA
lp://KUSD/QTZ 7,279.39 356.31 12,825.01 7,318.42 965.72 29,022.53 39.03 NA
lp://KUSD/BNC 57,885.35 128.64 5,700.39 57,897.53 128.64 5,801.95 12.18 NA
lp://KUSD/CSM 32,900.22 405.24 5,206.23 32,890.96 405.24 5,223.47 9.25 NA
lp://KUSD/RMRK 12,402.82 369.39 28,596.37 12,411.49 369.40 28,595.15 8.67 NA
lp://KSM/RMRK 7,106.81 82.09 8,820.16 7,113.68 82.16 8,823.56 6.87 NA
---
title: "Acala / Karura Pool Stats"
output:
  flexdashboard::flex_dashboard:
    orientation: rows
    vertical_layout: scroll
    social: menu
    source_code: embed
---

```{css custom1, echo=FALSE}
.dataTables_scrollBody {
    max-height: 100% !important;
}
```

```{r global, include=FALSE}

library(knitr)
knitr::opts_chunk$set(
  message = FALSE,
  warning = FALSE,
  comment = "#>"
)

library(kableExtra)
library(formattable)
library(lubridate)
library(flexdashboard)
library(DT)
library(subscanr)
library(ghql)
x <- GraphqlClient$new()

# Helper function to concat
`%+%` <- function(a, b) paste0(a, b)

# library(reticulate)

```

```{r tokens, cache = TRUE, include=FALSE}

pools_a <- getPoolStats_acala('acala')
pools_a[, volumeUSD_24H := as.numeric(volumeUSD_24H)]
pools_a[, volumeUSD_7D := as.numeric(volumeUSD_7D)]

pools_a_dex <- getPoolStats_acala_dex('acala') %>%
  setnames("totalTVL", "tvlUSD_DEX")
pools_a_dex[, volumeUSD_24H := as.numeric(volumeUSD_24H)]
pools_a_dex[, volumeUSD_7D := as.numeric(volumeUSD_7D)]

both_a <- merge(pools_a[, .(id, tvlUSD, volumeUSD_24H, volumeUSD_7D)],
                pools_a_dex[, .(id, tvlUSD_DEX, volumeUSD_24H, volumeUSD_7D)],
                by = "id",
                all = TRUE,
                suffixes = c("", "_DEX"))
both_a[, Absolute := abs(tvlUSD - tvlUSD_DEX)] %>% 
  setorder(-Absolute)
both_a[, Percentage := round((Absolute / min(tvlUSD, tvlUSD_DEX)) * 100, 1)]

both_a[, Percentage := ifelse(Percentage > 5, 
                   cell_spec(Percentage, color = "red"), 
                   cell_spec(Percentage, color = "green"))]



pools_k <- getPoolStats_acala('karura')
pools_k[, volumeUSD_24H := as.numeric(volumeUSD_24H)]
pools_k[, volumeUSD_7D := as.numeric(volumeUSD_7D)]

# FOR DEX must use dailyTradeVolumeUSD instead of tradeVolumeUSD
pools_k_dex <- getPoolStats_acala_dex('karura') %>%
  setnames("totalTVL", "tvlUSD_DEX")
pools_k_dex[, volumeUSD_24H := as.numeric(volumeUSD_24H)]
pools_k_dex[, volumeUSD_7D := as.numeric(volumeUSD_7D)]

pools_k[, .(id, token0.name, token1.name)]

both_k <- merge(pools_k[, .(id, tvlUSD, volumeUSD_24H, volumeUSD_7D)],
                pools_k_dex[, .(id, tvlUSD_DEX, volumeUSD_24H, volumeUSD_7D)],
                by = "id",
                all = TRUE,
                suffixes = c("", "_DEX"))
both_k[, Absolute := abs(tvlUSD - tvlUSD_DEX)] %>% 
  setorder(-Absolute)
both_k[, Percentage := round((Absolute / min(tvlUSD, tvlUSD_DEX)) * 100, 1)]

both_k[, Percentage := ifelse(Percentage > 5, 
                   cell_spec(Percentage, color = "red"), 
                   cell_spec(Percentage, color = "green"))]

```

# Acala {.tabset}

Row
----

```{r acala1}

knitr::kable(both_a, escape = FALSE, digits = 2, format.args = list(big.mark = ",")) %>%
  kable_styling() %>%
  add_header_above(c("Pool" = 1, "acala-subql" = 3, "acala-dex-subql" = 3, "Difference" = 2))

```


# Karura {.tabset}

Row
----

```{r karura1}

knitr::kable(both_k, escape = FALSE, digits = 2, format.args = list(big.mark = ",")) %>%
  kable_styling() %>%
  add_header_above(c("Pool" = 1, "acala-subql" = 3, "acala-dex-subql" = 3, "Difference" = 2))

```